home *** CD-ROM | disk | FTP | other *** search
/ Amiga Tools 4 / Amiga Tools 4.iso / grafix / tools / xanim / xfig / changes next >
Text File  |  1995-08-22  |  62KB  |  1,170 lines

  1. =============================================================================
  2. Version 3.1
  3. =============================================================================
  4.  
  5. Patchlevel 4 (Aug, 16, 1995)
  6.  
  7. NOTE 1: The Display PostScript code is not supported anymore until some kind
  8.     user can debug it for me, as I have no access to a server with DPS
  9.     extensions.  Use ghostscript for rendering your EPS files.  It gives
  10.     a color image on the xfig canvas now anyway.
  11.  
  12. NOTE 2: Because Unisys has stated that they will not charge royalties for the
  13.     use of the LZW compression algorithm in *FREE* programs, xfig will
  14.     continue to support importing and exporting of GIF images.
  15.     However, be aware that if you sell xfig, for example as part of a CD-ROM
  16.     package with freeware, you may be liable for paying royalties to Unisys.
  17.     The authors of xfig and the Lawrence Berkeley National Laboratory cannot
  18.     be held responsible in any case.
  19.  
  20. NOTE 3: Because of the patent/licensing issue with Unisys and the LZW compression
  21.     algorithm used in GIF files, the author of ghostscript has decided to
  22.     remove GIF support from that program.
  23.     xfig will now use PCX output from ghostscript when importing EPS files.
  24.     This means that you must compile ghostscript with the pcx256 and pbmraw
  25.     drivers.
  26.     Additionally, there is a bug in the pcx driver in Aladdin Ghostscript
  27.     versions prior to 3.32, which writes an incorrect pcx file for images
  28.     with odd width (not even).  There is a compile-time flag set (the
  29.     default) to make xfig add one pixel to the width of an odd-width image
  30.     when it reads in the pcx output from Ghostscript.
  31.     If you have Aladdin Ghostscript 3.32 or newer (which wasn't released
  32.     as of this writing) you may comment out that flag and your images will
  33.     have the proper width.  However, one pixel extra in width shouldn't
  34.     matter for most imported eps files.
  35.  
  36. NOTE 4: The -textoutline (resource textoutline) option has been moved into the 
  37.     -debug option.  This makes xfig draw a red box around text objects for
  38.     debugging purposes.
  39.  
  40. NEW FEATURES:
  41.  
  42. o JPEG (JFIF) images can be imported and exported - see Examples/pictures.fig
  43.     Unless you have an image (picture object) in your figure, you may not
  44.     gain very much by exporting in JPEG over GIF because of the nature of
  45.     compression used in both methods.  GIF is usually better for line
  46.     drawings or drawings with large blocks of continuous color (e.g. filled
  47.     polygons).  JPEG is usually better for compressing images.
  48.     The quality factor for exporting JPEG is fixed at 75.  This seems to be
  49.     fine for figures containing only solid objects (no images) and adequate
  50.     for figures containing imported images (GIF, JPEG, etc.).
  51. o New features in the Picture Object edit popup:
  52.     1) Capture a screen image to a GIF file to use for importing.
  53.     2) Call an image editor (e.g. xv) to edit an imported image. New
  54.        resource for the editor: "Fig.image_editor: xv" (default)
  55.     3) Popup a file browser to look for images to import.
  56.     all from Jim Daley (jdaley@cix.compulink.co.uk)
  57. o the points of arrow heads don't protrude past the endpoints of the object
  58. o when drawing polyline/polygon or spline you can delete newly created points
  59.     by pressing shift-mouse button 1
  60. o when saving figure, original is first renamed to file.bak to make backup file
  61. o smartlinks improved - lines touching boxes inside compound object will be
  62.     moved when compound is moved with smart links mode on
  63.     From Ian Brown
  64. o -help option to print all command-line options to xfig
  65. o can now change boxes to arc-boxes and vice versa with same button that
  66.     converts lines <-> splines.
  67. o label in fill style panel added to separate shaded fill from pattern fill
  68.     (if the pen and fill colors are both black or white it was impossible
  69.     to distinguish the patterns from the 100% shade fill)
  70. o when adding a new user-defined color, it is automatically selected for
  71.     modification without having to click on the cell.
  72. o point positioning now has five resolutions: arbitrary, 1/16" (1mm),
  73.     1/4" (5mm), 1/2" (10mm) and 1" (20mm)
  74. o increased resolution of dimensions in message window when drawing/moving
  75.     objects from 2 to 4 decimal places
  76. o new meta sequence "%f" in print parameters is replaced with current filename
  77.     for printing. Can be used for job name to printer.
  78.     (e.g. lpr ... -J %f ...)
  79. o version/patchlevel added to error handler messages to identify version of xfig
  80. o new export option for MetaFont language
  81. o new resources for ruler and unit box fonts: *topruler.font, *sideruler.font
  82.     and *unitbox.font.  See Fig.ad.
  83. o new resource (Fig.rulerthick:) and command-line arg (-rulerthick) to set
  84.     thickness of rulers (height of top ruler and width of side ruler)
  85. o note about patch for HP compilers in README file (see "Possible problems...")
  86. o on abort, xfig does a cd to the original directory where it was started so
  87.     that any core dump will be in the original directory
  88. o strncasecmp and strcasecmp routines provided for those systems that don't have
  89.     them.  See the Imakefile . From Fred Appelman (Fred.Appelman@cv.ruu.nl)
  90.  
  91. BUG FIXES:
  92.  
  93. o fig.h includes sys/types.h for BSD and Mips systems and excludes errno,
  94.     sys_nerr and sys_errlist for BSD
  95.     from Kurt J. Lidl (lidl@va.pubnix.com)
  96. o error in path for xpm.h in resources.h
  97. o reversed #elif conditions in fig.h for linux/osf defs of random() and srandom()
  98. o text size problem when reading file with text when zoom != 1.0 fixed
  99. o deleted user colors still showed up in color menu in "edit object" panel
  100. o when rotating or flipping an object, the new position wasn't kept on the
  101.     point positioning grid
  102. o selecting drawing mode using keyboard accelerators now updates mouse
  103.     indicator window
  104. o undo of multiple copy (array place) now undos all objects
  105. o undo of "figure load" properly sets "current filename" in File popup and
  106.     "default filename" in Export popup back to original values
  107. o undo of "figure load" does not set "figure modified" flag now
  108. o changing the figure orientation to/from Landscape/Portrait is considered a
  109.     figure modification for quitting/saving
  110. o GIF export was not available if XPM not installed - rearranged order
  111. o misplaced fclose() in f_readeps.c
  112. o misdeclared function close_picfile() in f_readeps.c
  113. o infinite loop when copying a line after scaling a compound using the move
  114.     point mode
  115. o bitmap image of Latex "Italic" font was mis-named "Italics"
  116. o no more hard-wired setting of background for mode and indicator panels
  117.     see Fig-color for more details
  118. o font size for text objects adjusted if < 4 points or > 1000 when reading file
  119. o update settings from object wasn't setting PostScript vs LaTeX flag when Font
  120.     update indicator was enabled
  121. o more checking done in popup edit panel for illegal line thickness or depth
  122. o flip or rotate anchor/center point crosshair turned off when selecting new
  123.     drawing mode
  124. o seg fault in import/edit of picture object due to filename string corruption
  125. o segfault sometimes on file load - gcc sometimes produces code which segfaults
  126.     when doing ungetc on const string. Constant string copied for sscanf
  127. o bug in computing the center of an arc when scaling
  128. o smarter redrawing of objects in correct depth order when creating or modifying
  129.     any object
  130. o changed bestd = ~(((int) 1)<<31); to bestd = INT_MAX in f_neuclrtab.c due to
  131.     temporary integer overflow inside the parentheses
  132. o if -textoutline was specified, boxes appeared around text when exporting to
  133.     bitmap-type format (e.g. GIF, XBM, etc)
  134. o if the file message window popped up before canvas translations were installed
  135.     a warning about the PasteCanv action not being found resulted.  This was
  136.     fixed by narrowing the specification for the translation in the
  137.     app-defaults file.
  138. o bounding box for text objects was incorrect when loading file with zoom != 1.0
  139. o bounding box for ellipses was incorrect with thick lines
  140. o bug in handling text objects with \ at end
  141.     patch from Andrew McParland (akm@rd.bbc.co.uk)
  142. o mis-named character "acute" removed from the multi-key sequence list in man
  143.     pages
  144. o LaTeX font "Modern" changed to correct name "Sans Serif"
  145.     new menu bitmap from Volker Kuhlmann  (kuhlmav@elec.canterbury.ac.nz)
  146. o bounds calculation of objects didn't take line thickness into account
  147.     correctly
  148. o drawing very small arcs (e.g. when zoom is small) resulted in strange lines
  149.     being drawn
  150. o importing XPM images with undefined colors resulted in an X error.  Now xfig
  151.     uses white for null color entries.
  152. o problems with XFree86-3.1.  Get XFree86-3.1.1.
  153. o some picture objects without filenames would be saved incorrectly and
  154.     couldn't be re-read
  155. o extraneous error message about inaccessible file when it contains bad Fig
  156.     object
  157. o bug in bounding box calculation created compound objects off by one unit
  158. o added #include <sys/types.h> for ultrix file stat structure
  159. o bug in scanning 8-bit character followed by a number in text object
  160.     (e.g. \24355 should be the British Pound Sterling character followed
  161.     by 55, not character (octal) 24355)
  162. o in older Fig files (2.1) text at 90 degree angle was slightly jagged due to
  163.     rounding error
  164. o xfig doesn't coredump when delete window operation is done on xfig window or
  165.     user logs out without quitting xfig
  166. o bug in redefining user colors when merging figures
  167. o single-point lines with arrowheads caused segfault - xfig now takes more
  168.     steps to not allow arrowheads for those
  169. o undo of delete arrowhead created arrowhead with current line thickness etc.
  170.     instead of restoring original
  171. o removed extraneous comma (,) from lp command for SYSV/SVR4 systems.
  172. o changed the "-oPS" command-line option (used for SYSV systems) to "-T PS"
  173.     in the Fid.ad app-defaults file.
  174. o typo in FORMAT3.1 file - line and arrowhead thicknesses units are 1/80 inch,
  175.     not Fig units.  Also, dash/dotted size/spacing are in 1/80 inch units.
  176. o some compilers don't like empty .c files (e.g. when XPM is not compiled in)
  177.     static dum_function() placed in f_readxpm.c and f_wrxpm.c for that case
  178. o bug in #include for xpm.h - X11/xpm.h was appended to XPMINCDIR - removed X11/
  179. o added #ifdef ultrix to include <sys/types.h> which is needed for <sys/stat.h>
  180. o black and white colors in colorpanel were set to fore/background colors
  181.     instead of black and white (problem when -bg and/or -fg used)
  182.     from Matthias Braun (browny@ise.fhg.de)
  183. o length of line reported when drawing in Mountain or Mountain/Manhattan mode
  184.     was behind by one point positioning unit until new point was established
  185. -----------------------------------------------------------------------------
  186. Patchlevel 3 (Jan, 24, 1995)
  187.  
  188. BUG FIXES:
  189.  
  190. o when using the 3D Athena widgets, user defined color buttons in popup color
  191.     panel were allocating three colors per user color - fix to app-default
  192.     file fixed that (3D widget set was trying to make shadows)
  193. o EPS objects were too small when "Use orig. size" used in edit panel
  194. o hexadecimal color names not parsed correctly for xpm images
  195. o moved include of <stdio.h> and some others above <X11/Xlib.h> for gcc
  196.     warnings about NULL being redefined
  197. o LaTeX text with special flag had wrong style (Roman became Italic etc.)
  198. o cap style implicitly set to ROUND for ellipses and closed splines with
  199.     dotted lines
  200. o some cleanup of pointer/data type casts
  201.     from Randy MacLeod
  202. o incorrect parameter for ibmgl export mode - incorrectly used -L for landscape
  203. o more #ifndef/#endif surrounding random, srandom and frandom in fig.h
  204. o removed the -oPS command-line option for SYSV systems because it is printer
  205.     dependent.  Use the "Fig*job_params*string: -oPS" resource.
  206. o can now dismiss message window while edit panel is up
  207. o command string for printing file too short for some cases - increased
  208.  
  209. -----------------------------------------------------------------------------
  210. Patchlevel 2 (Jan, 13, 1995)
  211.  
  212. BUG FIXES:
  213.  
  214. o ISO8859 restriction on font searching was inadvertantly removed - added back
  215. o hexadecimal color names not parsed correctly xfig standard colors. This was
  216.     causing xfig to switch to monochrome mode after complaining that it
  217.     couldn't allocate the standard colors.
  218. o definition for XCOMM in Imakefile for those running R4
  219. o fixed problem with popup message panel having wrong colors when xfig switches
  220.     to a private colormap
  221. o objects with dotted lines didn't show until an object with dashed line was
  222.     first created
  223. o moved #include of X11/Intrinsic.h to top of fig.h file so
  224.     XtSpecificationRelease would be defined when needed
  225. o comment for patchlevel 1 about command-line option -dontswitchcmap misspelled
  226. o new label in print panel - "Print to PostScript Printer" makes it obvious
  227.     that the only printer type available is PostScript
  228.  
  229. -----------------------------------------------------------------------------
  230. Patchlevel 1 (Jan, 11, 1995)
  231.  
  232. BUG FIXES:
  233.  
  234. o couldn't read eps files that didn't have showpage command
  235. o segfault when non existent eps or other image file is referenced in a figure
  236. o command-line option -dontswitchcmap (resource Fig.Dont_switch_cmap) fixed
  237. o export and file load/merge offsets units (inches, cm, etc) not correctly
  238.     set when -metric option used
  239. o seg fault when converting line to spline because cap_style wasn't initialized
  240. o when converting spline to line, cap_style was set to current cap_style
  241.     instead of style of line being converted
  242.  
  243. -----------------------------------------------------------------------------
  244. Patchlevel 0 (Jan, 9, 1995)
  245.  
  246. BUG FIXES:
  247.  
  248. o NOTE:    An error in version 3.0.0 incorrectly positioned objects on the canvas
  249.     when reading older fig files.  New objects entered with 3.0 are
  250.     correctly positioned.  A warning will popup when you load a version 3.0
  251.     file with version 3.1 that says you might need to offset your figure by
  252.     14 fig units in X and Y when you load it.  This is done by setting the
  253.     X and Y offset in the popup File panel.
  254.     I apologize for the inconvenience.
  255.  
  256. *****    This is also why the file version number has changed.
  257.  
  258. o conditionals and macros added for for machines with different random number
  259.     generators
  260. o segfault in show_pen_color and show_fill_color under certain conditions when
  261.     switching colors
  262. o error in x/y load/merge offset when reading pre 3.0 files
  263. o bug in drawing large (6 inches diameter or larger) circles or ellipses with
  264.     dashed or dotted lines and angle of 0 degrees.
  265. o extra line was drawn to center of ellipse or circle when dashed or dotted
  266.     lines used and angle of 0 degrees.
  267. o bug in f_read.c which caused FPE errors when reading incomplete/incorrect
  268.     Fig file
  269. o declaration of count_lines_correctly() inconsistent in f_read.c
  270. o incorrect cast using malloc in f_readxpm.c()
  271. o setcenter, setcenter_x and setcenter_y should be extern in e_flip.c
  272. o setanchor, setanchor_x and setanchor_y should be extern in e_rotate.c
  273. o text following #endif non-ANSI in main.c
  274. o error in source file names in Imakefile - had f_wrgif.o instead of f_wrgif.c
  275. o error in freeing NULL font struct when quitting xfig (in u_free.c)
  276. o renamed basename() to basname() to avoid conflict with Linux libc function
  277. o error in LaTeX font numbering in Doc/FORMATx.x files
  278. o major errors in reading version 1.3 files
  279. o overriding translations in turn_on left black outlines around buttons in
  280.     mode panel when new mode button pressed
  281. o some servers drew black background in indicator panel buttons - caused by
  282.     fill mode being "tiled" for buttons other than the fill style button
  283. o images (GIF, XPM etc) weren't always recolored correctly when using popup
  284.     edit panel on picture object
  285. o DPS fixes for Solaris 2.3
  286.     from Pete A. Zaitcev (zaitcev@lab.ipmce.su)
  287.  
  288. =============================================================================
  289. Version 3.0
  290. =============================================================================
  291.  
  292. Patchlevel 0 (Dec 22, 1994)
  293. Changes to Version 2.1.8:
  294.  
  295. NEW FEATURES:
  296.  
  297. o changes to the file format (protocol).  See Doc/FORMAT3.0 for details.  This
  298.     means you must also get transfig 3.0.  Xfig will still read older Fig
  299.     format files but will always write the new format.
  300.  
  301.  These are the new features related to the new file format:
  302. -----------------------------------------------------------------------------
  303.    o resolution is increased from 80 ppi to 1200 ppi.  This decreases jaggies.
  304.     A side effect is that xfig can now read fig files of any resolution,
  305.     although it converts the file to 1200ppi internally, and saves it in
  306.     that resolution.
  307.     from Ross Martin (martin@trcsun3.eas.asu.edu)
  308.    o Portrait/Landscape, Print Justification (center or flush left) and Metric/
  309.     Inches indicators saved with figure file now - xfig automatically
  310.     switches to correct mode when reading file
  311.    o separate pen and fill colors for all objects except text.
  312.    o there are now 32 "standard" colors - new ones are: gold, three shades each
  313.     of blue, green, cyan, red, magenta, brown and pink.
  314.    o in addition, there are now user-definable colors which may be defined by
  315.     using RGB (Red, Green, Blue) or HSV (Hue, Saturation, Value) slider bars
  316.     or by hexadecimal values. These are stored in the figure file as pseudo-
  317.     objects of type 0 which define the rgb values in hexadecimal.  The color
  318.     numbers range from 32 to 543.
  319.    o more fill options - colors transition from black to full saturation
  320.     (shades) and on to full white (tints, i.e. pastels).
  321.     Or you can use one of 16 fill patterns - diagonal lines, bricks,
  322.     shingles, crosshatch etc.
  323.    o two arc styles: open (original) and pie-wedge (closed)
  324.    o three line-join styles: miter (default style), round and bevel (see
  325.     PostScript or Xlib reference for description)
  326.    o three line-cap styles: butt (default style), round and projecting (see
  327.     PostScript or Xlib reference for description)
  328.    o three new arrowhead types (both hollow and solid)
  329.     and the tips of the arrowheads are now pointed, as they should be
  330. -----------------------------------------------------------------------------
  331. Features which are independent of the new file format:
  332.  
  333. o EPS objects have been changed to "picture objects" to include GIF images,
  334.     X11 bitmap images and the XPM3 (color pixmaps) besides Encapsulated
  335.     PostScript.  Compressed (.Z) and gzipped (.z or .gz) files are also
  336.     handled.  Future versions of xfig may include TIFF, etc.  X11 bitmap
  337.     picture objects use the pen color component.  The popup edit panel
  338.     shows the image type, size and number of colors used, if applicable.
  339.     See the Examples/pictures.fig for examples of XPM, XBM and GIF.
  340.     You must have version 3.4c or newer of the XPM library.  This is
  341.     available from ftp.x.org in /contrib/libraries.
  342.  
  343.     GIF input code from David Koblas' giftoppm code from the pbmplus
  344.     package.
  345.  
  346.     A Floyd-Steinberg dithering is applied to color images for monochrome
  347.     displays.
  348.  
  349.     For EPS files, if Ghostscript is used to generate the preview, an 8-bit
  350.     color preview is generated if xfig is running on an color display.
  351.     The command-line option -dSAFER is used when calling ghostscript which
  352.     prevents any files being written by the postscript code.
  353.  
  354.     The color quantization algorithm to minimize the number of colors
  355.     needed for the color images uses a neural network scheme written by
  356.     Anthony Dekker (dekker@ACM.org).  
  357.     [NEUQUANT Neural-Net quantization algorithm by Anthony Dekker, 1994.
  358.     See "Kohonen neural networks for optimal colour quantization"
  359.     in "Network: Computation in Neural Systems" Vol. 5 (1994) pp 351-367.
  360.     for a discussion of the algorithm.]
  361.  
  362. o when moving an object on the canvas the straight-line (sqrt(x^2 + y^2))
  363.     distance from the original position is reported in the message panel
  364.     along with the X and Y distances.
  365.     from Uwe Bonnes (bon@lte.e-technik.uni-erlangen.de)
  366. o rotate or flip objects around a chosen anchor point - see FLIP and ROTATE
  367.     sections in the man pages.
  368.     from Uwe Bonnes (bon@lte.e-technik.uni-erlangen.de)
  369. o make multiple copies of object as you rotate or copy it - see COPY section in
  370.     the man pages
  371.     from Uwe Bonnes (bon@lte.e-technik.uni-erlangen.de)
  372. o new command panel button to switch canvas between Portrait and Landscape mode
  373. o new option in file load/merge panel to load/merge figure with offset on canvas
  374. o new option to export file with offset on page in inches or cm
  375. o OE and oe characters possible now; though not visible on the canvas because
  376.     they don't exist in the X11 fonts they will print in PostScript
  377.     from Serge Lacourte (lacourte@bikini.imag.fr)
  378. o starting textstep, fillstyle, linewidth and gridmode can all be specified
  379.     with command-line args or resources now (see man pages)
  380.     from Serge Lacourte (lacourte@bikini.imag.fr)
  381. o larger grid (1 inch or 20 mm)
  382. o when zooming very small, number of grid lines are reduced to avoid clutter
  383. o more keys available for multi-key sequence: Alt_L, Alt_R and Escape besided
  384.     the usual Meta key
  385.     from Serge Lacourte (lacourte@bikini.imag.fr)
  386. o in update mode, the control panel doesn't scroll with the indicator buttons
  387.     but stays on the left side all the time
  388. o rulers are a little smarter - fewer labels and ticks when zoom scale is small,
  389.     0.5 inch marks for inches scale when large enough
  390. o minor changes to names of some widgets - "xfig_" prefix removed from those
  391.     having it
  392. o can use "box-scale" on ellipses and circles now besides "scale about center"
  393. o new alignment options - Distribute objects evenly horizontally, vertically
  394.     or both, spacing either their edges or centers evenly, or abutting
  395.     their edges
  396.     from Matthew Leditschke (mcl@eikona.eng.monash.edu.au)
  397. o keyboard icon appears in mousefun window when text entry is required
  398.     works during canvas text entry and in ASCII widgets in popups
  399. o carriage return in any ASCII widget in edit popup applies changes
  400. o zoom in and zoom out accelerators (Z (zoomin) and z (zoomout) defaults)
  401. o popup font menu is now two entries wide to reduce overall height
  402. o panning is proportional to zoom factor, i.e. pan step is 1/2 inch in canvas
  403.     units, not drawing units
  404.     from Anthony Smith
  405. o holding down the Shift key while panning pans 5x as far
  406. o fill style indicator shows current color now
  407. o two new Example files: illusion.fig and recycle.fig
  408.     from Vivek Khera (khera@cs.duke.edu)
  409. o four new clip-art files (Examples directory): clp_bldgs.fig, clp_network.fig,
  410.     clp_computer.fig and clipart.fig
  411.     from William J. Chimiak (chim@relito.medeng.wfu.edu)
  412. o new export languages - GIF and X11 Pixmap (XPM, color X pixmaps) output
  413.     - must have the XPM3 package for XPM output.
  414.     XPM3 code from Karel van Houten (K.H.C.vanHouten@research.ptt.nl)
  415.     GIF code from E. Chernyaev (chernaev@mx.decnet.ihep.su)
  416. o can handle eps files with %%BoundingBox: (atend)
  417.     from Paul Hodgkinson (hodgkin@physchem.ox.ac.uk)
  418. o no need for the -DNOSTRTOL flag anymore if your system doesn't have strtol()
  419. o export magnification factor added for X11 bitmap/pixmap output
  420. o MAXNUMPTS (the maximum number of points displayed for large objects) may be
  421.     specified in the Imakefile with -DMAXNUMPTS=xxxx, if desired
  422.  
  423. BUG FIXES:
  424.  
  425. o first/opposite corner designation for box objects was reversed in popup edit
  426. o line count correct when reporting any errors reading figure file
  427.     from Andreas Bagge (Andreas_Bagge@h2.maus.de)
  428. o when scaling box object, size of box now shown with first click when using
  429.     middle button
  430. o more sanity checks on starting values (e.g. -startfillstyle < 0 etc)
  431. o changes in dot/dash spacing were sometimes delayed in effect.  Fixed.
  432. o if printer name came from env variable, it didn't show up in print panel until
  433.     first figure was printed
  434. o smarter redraw of underlying objects when updating or rotating objects or
  435.     moving, adding or deleting points of an object
  436. o metric scale is now correct size when printing
  437.     from Hans Werner Strube (strube@swing.physik3.gwdg.de)
  438. o temporary file for importing EPS objects wasn't honoring XFIGTMPDIR
  439. o text angle was written with only 5 decimal places - causes rounding errors
  440. o after adding/deleting a point from a poly object, copying a compound object
  441.     would cause xfig to hang (loop in linked list)
  442. o grid wasn't reset when changing to/from Imperial/Metric scale
  443. o "Ruler units" message was incorrect when changing to/from Imperial/Metric
  444. o file_msg() routine now uses varargs
  445.     old method was causing crashes to occur on a 64 bit machine
  446. o toggle of update masks wasn't using correct variable
  447. o when drawing a dotted line with only two points which are coincident, some
  448.     servers die and others give BadLength error.  A call to draw a point
  449.     is substituted in this case.
  450. o bug in changing directory using ".." in text panel for "Curent Directory" in
  451.     file and export popups
  452. o in monochrome mode, popup color choice panel black/white reversed from
  453.     indicator button for blue-yellow
  454. o first section of man pages didn't mention IBM-GL language in reference to
  455.     fig2dev
  456. o filled objects didn't show the fill pattern in monochrome mode
  457. o seg fault when xfig used default font when desired font could not be found
  458. o fixed some memory hog problems with accelerators
  459. o some typos in the class names of bold/normal/button fonts in man pages
  460. o double clicking on a filename to load it sometimes resulted in garbage or
  461.     blank filename in file name panel.
  462. o remnants of #ifndef NO_SIBGUS (note typo) fixed.  NOW there is no need for
  463.     #define NO_SIGBUS if your system doesn't have SIGBUS.  Automatic now.
  464. o typo in fig.h check for #ifdef(SYS) instead #ifdef(SYSV).
  465. o added check for SCO3.2r4 which needs stdlib.h for atof() and getenv()
  466. o switching between LaTeX and PostScript fonts while entering text object
  467.     caused illegal font to be created in text object
  468. o GC's tr_gc, tr_xor_gc, tr_erase_gc, sr_gc, sr_xor_gc and tr_erase_gc declared
  469.     in resources.c and in w_rulers.c
  470. o cur_cursor set to arrow_cursor before arrow_cursor was created
  471. o experimental color definitions in resources in main.c clobbered variables
  472.     because array wasn't large enough.
  473. o false query about overwriting existing fig file fixed
  474. o shifted keyboard accelerators work with caps lock besides shift key
  475. o text bounds fixed
  476. o smarter text locator when moving rotated text
  477. o missing "return 1" in bitmapDPS procedure (Display PostScript machines)
  478. o type mismatch in w_rottext.c ("return NULL" changed to "return 0") in
  479.     XRotPaintAlignedString()
  480. o bug in memory allocation for font name when desired font doesn't exist
  481. o increased memory allocation for large, rotated ellipses
  482.  
  483. =============================================================================
  484. Version 2.1
  485. =============================================================================
  486.  
  487. Patchlevel 8 (Oct 1, 1993)
  488. Changes to Patchlevel 7:
  489.  
  490. NEW FEATURES:
  491.  
  492. o minimum movement for mountain/manhatten mode reduced from 7 pixels to 2
  493. o lengths/radii of objects now displayed on first click in move point mode, not
  494.     just when actually moving the points
  495. o -DOPENWIN no longer necessary - xfig automatically first uses OpenWindows
  496.     scalable fonts (e.g. times-roman-33) if they are available, X11R5
  497.     scalable fonts next if they are available or non-scaling fonts if
  498.     neither of the above is available.
  499. o maximum radius of arc-boxes increased from 30 to 100 pixels
  500. o icon now shows current filename (without full path)
  501. o Control-L does Redraw when not in text input mode (same as Meta-R)
  502. o popup query to shift whole figure when reading in figure file if any objects
  503.     have negative coordinates
  504. o mouse function window shows pan/zoom operations when control key is pressed
  505. o popup query when exporting figure if figure has not been saved (note: this
  506.     is not necessary for exporting current figure but is a warning to
  507.     the user that the figure hasn't been saved yet)
  508. o BSD-style printing on SYSV machines (like SGI) allowed by setting -DBSDLPR
  509.     in Imakefile/Makefile
  510.     from Dave Goldberg (dsg@blackbird.mitre.org)
  511. o on-screen rotation of text at any angle
  512.     xfig now uses xvertext 5.0 from Alan Richardson which allows rotation
  513.     at any angle. The whole font is not loaded anymore, and strings are
  514.     cached, which speeds up the interactive input of text.
  515. o man pages no longer use .TS (table) commands for those systems whose roff
  516.     doesn't support tables.  Also formatting cleaned up and typos fixed.
  517.     From David W. Sanderson (dws@ssec.wisc.edu)
  518. o double click on filename in File menu will automatically load figure
  519. o double click on filename in Export menu will automatically export figure
  520. o some more information about text objects has been added to the Doc/FORMAT2.1
  521.     file - specificly about the font and font_flags fields
  522. o keyboard accelerators for drawing/editing mode panel.  See Fig.ad for details
  523.     From Tim MacKenzie (tym@dibbler.cs.monash.edu.au)
  524. o Example figure which contains building blocks for making flowcharts - called
  525.     flowchart.fig in the Examples directory (replaces old flowchart.fig)
  526.     from Tim P. Starrin (noid@cyborg.larc.nasa.gov)
  527. o The default is now for xfig to use X11R5 scalable fonts unless the server
  528.     doesn't support them.  The user may still disable them with -noscalable
  529.     or the resource "Fig*scalablefonts: false".
  530. o new button panel in the indicator panel to set/clear or toggle update flags to
  531.     make it easier to control which object attributes are affected by update
  532. o new command-line paramter: -but_per_row (resource But_per_row) specifies the
  533.     number of buttons wide the mode panel should be.  This is useful in
  534.     conjunction with -pheight for small screens to reduce the canvas area.
  535. o no need to add -DNO_SIGBUS to Imakefile for systems without SIGBUS anymore.
  536.     This this is automatic now.
  537.  
  538. BUG FIXES:
  539.  
  540. o changing a filled object to unfilled now draws background correctly
  541. o cleaned up inconsistencies with fill colors in monochrome mode
  542. o GC's were being freed twice if window quit was executed (window manager)
  543. o exporting figure to X11 bitmap only exported visible part of canvas
  544. o current directory wasn't set in export popup unless file menu had been popped
  545.     up previously
  546. o units box didn't change from "in" to "cm" or vice versa when changing from
  547.     Imperial to/from Metric
  548. o editing text with popup edit at zoomscale != 1 shows correct text size now
  549. o undo of text delete at another zoomscale shows correct text size now
  550. o colons (:) removed from widget names (difficult to set resources with colons)
  551. o conditional definition of index = strchr (or strchr = index) for those systems
  552.     which already have them defined
  553. o workaround for linux bug where certain 8-bit characters are not read properly
  554.     by sscanf()
  555.     from Alain Lucien Knaff (knaff@mururoa.imag.fr)
  556. o height of cursor for text input closer to actual text height (was "descent+
  557.     ascent" tall, now is "ascent" tall)
  558. o <Meta>L (LoadFile function) didn't query if current figure was modified before
  559.     re-loading file
  560. o if normalFont can't be loaded, "fixed" font is tried - if that fails xfig
  561.     quits with error message
  562. o 8-bit character did not appear on canvas
  563. o semicolon missing from "for" statement in main.c
  564. o caused core dump if the environment variable PRINTER was not set and the
  565.     Fig*printer*string was not set
  566. o -startfontsize parameter wasn't being honored
  567. o quit() function was being called with too few parameters.  This kills xfig
  568.     on OpenWindows servers.
  569.     From David Partain (dlp@ida.liu.se)
  570. o fixed bug with freeing two identical GC's (caused coredump when quitting on
  571.     certain machines)
  572. o fixed bug inadvertently introduced in 2.1.7 which caused some arcs to be drawn
  573.     as circles
  574. o scaling of arc inside compound no longer produces co-linear points
  575. o messages didn't appear in the message panel when filename panel wasn't
  576.     large enough
  577. o parameter missing from call to curve() which made strange half-ellipse for box
  578.     curve radius indicator. Caused massive problems for OpenWindows servers.
  579. o moved two accelerators (SaveFile and LoadFile) from top-level to the File
  580.     widget heirarchy (this was causing OpenWindows servers to eat memory)
  581. o work around for bug in OpenWindows 2.0 with bitmaps in widgets (caused
  582.     BadMatch error when popping up the print panel)
  583. o duplicate .TP in xfig.man caused nroff to throw away the text following the
  584.     "Dismiss" description in the print section
  585. o emptyname() dereferenced null pointer if printer name was NULL
  586. o malloc didn't alloc enough space for fontname + null in w_drawprim.c
  587. o text outline box was sometimes drawn incorrectly
  588. o Renamed ICONFIGFILES (already used by X11 config) to ICONXFIGFILES and defined
  589.     it in Imakefile (it was referenced but undefined)
  590.  
  591. ------------------------------------------------------------------------------
  592. Patchlevel 7 (May 3, 1993)
  593. Changes to Patchlevel 6:
  594.  
  595. NEW FEATURES:
  596.  
  597. o Vertical and upside-down text - text with angles of 90, 180 and 270 degrees
  598.     supported. Text between those angles will be drawn with the next
  599.     higher angle (e.g. 130 degree text will be drawn at 180 degrees).
  600.     from Alan Richardson (mppa3@uk.ac.sussex.syma)
  601. o message panel uses asciiTextWidget so one may select text from it
  602. o does not ask if it is OK to write an existing file during save if it is the
  603.     current figure file that is being saved.  Same for export.
  604. o accelerators to Save or Load file without popping up file menu
  605.     (default: Meta-S to Save and Meta-L to Load)
  606. o PRINTER environment variable is used if no resource is set for
  607.     Fig*printer*string
  608. o if an ellipse is scaled such that the radii become equal it is "converted"
  609.     to a circle
  610. o ablity to change to/from imperial and metric with popup menu by hitting
  611.     mouse button 3 in the units box (where rulers meet)
  612.     from Paul King (king@cs.uq.oz.au)
  613. o new command-line parameters -userscale (resource userscale) and -userunit
  614.     (resource userunit) which are used in the on-screen messages which
  615.     show the current length/diameter etc.  This provides a simple way of
  616.     doing scale drawings, e.g. 0.25 inch = 1 ft (userscale=0.25,
  617.     userunit="ft") or 1 cm = 1 m (userscale=1, userunit="m").  These may
  618.     be changed via the popup menu by hitting mouse button 3 in the units
  619.     box (where rulers meet)
  620. o new indicator button allows text flags to be viewed/set
  621. o compiles/runs on DEC Alpha with OSF/1 now
  622. o text widget in the print popup to pass extra parameters to print program
  623.     (lp or lpr as the case may be)
  624. o indicator shows the number of figures in the batch print file in print popup
  625. o automatic on-screen generation of preview bitmap for EPS objects if you have
  626.     gs (ghostscript) - compile with -DGSBIT flag
  627.     from Michael C. Grant (mcgrant@rascals.stanford.edu)
  628.     adapted from
  629.     Marc Goldburg's (marcg@rascals.stanford.edu) original idea and code.
  630. o indicator in upper-left corner (under Quit button) shows current filename
  631. o print button changes message from "print FIGURE to printer" to "print BATCH to
  632.     printer" if there are figures in batch file
  633. o when drawing objects or moving/adding points the length/radius/diameter is
  634.     displayed in the message window
  635. o feature to shift figure on page if it is off the page has been disabled until
  636.     it can be done with option or explicit command
  637. o added -noscalablefonts command-line option to force scalable fonts OFF
  638.     (usually for debugging)
  639.  
  640. BUG FIXES:
  641.  
  642. o condition for OSF/1 added to use dirent
  643.     from Dave Hill (ddhill@zk2.dec.com)
  644. o Floating point values allowed for BoundingBox in EPS files
  645. o if user asks for scalable fonts but server doesn't support them, xfig auto-
  646.     matically switches to non-scalable fonts
  647. o when printing to batch file, incorrect filename appeared in message panel
  648. o undo of a text move didn't redraw the text
  649. o <unistd.h> included unnecessarily in f_util.c (X11/Xos.h includes it if
  650.     necessary). Also, various cleanups with multiply defined cursors etc.
  651.     From Casey Leedom (casey@gauss.llnl.gov)
  652. o internalborderwidth resource should be integer not float
  653. o cancel when drawing latex line left unwanted garbage on screen
  654. o put_fmsg removed and put_msg uses varargs now so MIPS machines and others
  655.     should all work fine now
  656. o writing X11 bitmap still had bugs
  657. o text wasn't being rotated around mouse point with rotate mode
  658. o when moving end points of a (sp)line or when adding points to the end
  659.   of a (sp)line, the angle geometry button was not available
  660. o export directory now follows file directory when load/save figure is done
  661. o entering centered text with odd number of characters caused double image
  662. o fixed bug with incorrectly placing text with point positioning on when the
  663.     text was originally created with point positioning off
  664. o when moving centered or right-justified zoomed text grab point was shifted
  665. o rotated ellipses panned incorrectly
  666. o centering/flush-left options in Export menu were reversed
  667. o flipped EPS objects weren't being flipped properly when reading in figure
  668. o GC's weren't being freed when xfig finished
  669. o added Titan OS (Stardent) to list of machines needing getenv() and atof()
  670.     explicitely defined (not in /usr/include/... file )
  671.     from Joachim Wiesel (wiesel@ipf.bau-verm.uni-karlsruhe.de)
  672. o underscores weren't showing in text line in popup edit
  673.     from Daniel Faigin (faigin@aero.org)
  674. o old text outline wasn't being erased
  675.     from Daniel Faigin (faigin@aero.org)
  676. o number[] array wasn't large enough for new 3-character numbers in the rulers
  677.     from Andrew Haylett (ajh@gec-mrc.co.uk)
  678. o check for X_NOT_STDC_ENV reversed in fig.h for inclusion of stdlib.h and
  679.     defs of getenv() and atof()
  680.     from Jonathan Kamens (jik@rtfm.mit.edu)
  681. o SetDir() parameters added (but not used) to placate certain compilers
  682. o point positioning resolution wasn't available with add-point-in-object
  683. o angle geometry indicator appeared when moving/adding points but isn't used
  684. o problem fixed with file popup and grab
  685.     from David Brooke (BROOKE@leva.leeds.ac.uk)
  686.  
  687. ------------------------------------------------------------------------------
  688. Patchlevel 6 (Nov 1992)
  689. Changes to Patchlevel 5:
  690.  
  691. NEW FEATURES:
  692.  
  693. BUG FIXES:
  694.  
  695. o typo in man pages with menu item "Textyl \special commands" in export menu
  696. o action changed from "cancel" to "dismiss" for print menu accelerator
  697. o bug in Intrinsics? on Sun Monochrome prevented side ruler from scrolling
  698. o was using ellipse routine to draw circles - was choppy for small circles
  699. o cast comparison function argument to qsort
  700. o rotated ellipses don't become coarse as they are zoomed
  701.  
  702. ------------------------------------------------------------------------------
  703. Patchlevel 5 (Nov 1992)
  704. Changes to Patchlevel 4:
  705.  
  706. NEW FEATURES:
  707.  
  708. o support for two button mouse - use META + Button 3 to simulate button 2
  709.     from Lars Berntzon (lasse@delila.cgl.se)
  710. o new resource "textoutline" (class "TextOutline") and command-line argument
  711.     "-textoutline" which will outline text in red to show the bounding box
  712.     that the text will occupy when printed (useful for rotated text)
  713. o print popup stays up until dismissed - can still pop up file/export menues,
  714.     draw etc. while print popup is up.  HOWEVER, while file or export
  715.     popups are up, the print panel is not active.
  716. o can align all objects to canvas, not just to compound - use mouse button 2
  717.     idea from Jon Forrest
  718. o ellipses may now be rotated by an arbitrary angle and show their rotation
  719.     from Janes Tough (jamest@cs.heriot-watt.ac.uk)
  720. o new -iconGeometry command-line argument
  721. o new command-line argument and resource -exportLanguage to specify default
  722.     Export language.  See man pages.
  723. o new command-line argument and resource -flushleft to set default printing to
  724.     flush left on page. See man pages.
  725. o keyboard accelerators! Resource file has defaults for file, export and print
  726.     popup panels and top command panel accelerators; <Meta>f will popup file
  727.     panel, <Meta>q will quit, etc. See resource file and man pages for
  728.     details.
  729. o one may now batch together several xfig files for printing with one print job.
  730.     See popup print panel and man pages.
  731. o new label in the mouse function window & more obvious default color (yellow)
  732. o added scrollbar for indicator panel when buttons won't all fit on screen
  733. o can now edit sizes of arrowheads using popup edit panel
  734. o "make install" now automatically installs Fig.ad and Fig-color.ad in
  735.     app-defaults directory
  736. o WM_DELETE_WINDOW now supported by popups - cancels popup function
  737.     WM_DELETE_WINDOW in main canvas saves figure in xfig.SAVE and quits
  738.     from David Wexelblat (dwex@mtgzfs3.att.com)
  739.  
  740. BUG FIXES:
  741.  
  742. o rulers only allowed 2 digits for inches/cm
  743. o deleted line thickness/color/area-fill/line-style and arrow settings for EPS
  744.     objects in the update mode and removed color part in popup edit panel
  745. o depth wasn't being updated for splines and texts using update button
  746. o more cleanup with respect to procedure/variable types/casts
  747.     from Don Sharp (dws@mari.co.uk)
  748. o fixed text bounds calculation to take into account any rotation when reading
  749.     in figure from a file to decide whether to shift figure to keep on
  750.     canvas
  751.     (fig2dev 2.1.5 is also fixed so figures with rotated text near edges
  752.     should center properly now)
  753. o fixed bug where segments disappeared while drawing interpolated spline in any
  754.     LaTeX drawing mode
  755. o rearranged a-z and A-Z keys in the CompKeyDB file because some HP computers
  756.     were apparently doing random things with capitalization
  757.     from Anthony Shipman (als@bohra.cpg.oz.au)
  758. o fixed export of color figure to X11 bitmap format.  White -> white, all other
  759.     colors -> black.
  760. o removed apparently unnecessary translation from w_export, w_file and w_print
  761.     which causes coredump on some HP machines.
  762.     From Alfred van der Hoeven (alfred@arthur.et.tudelft.nl)
  763. o fixed initialization bug in u_undo.c and object.c which caused HP 9000/700
  764.     compilers to segfault
  765.     From Alfred van der Hoeven (alfred@arthur.et.tudelft.nl)
  766. o new environvemt variable "XFIGTMPDIR" used for xfig temporary files directory
  767. o when reading a figure file, if any object coordinates are negative, the figure
  768.     is shifted to keep it on the canvas so that the upper-left corner of the
  769.     figure is placed on the current point positioning grid
  770.     (in 2.1.4, the upper-left corner was placed at 10,10)
  771. o changed "char" to "unsigned char" for initialization of bitmaps by compilers
  772.     from Teus Hagen (teus@oce.nl)
  773. o was passing floats to put_fmsg() instead of doubles.
  774. o includes copy of X11/Xfuncs.h now to use correct routines for zeroing/copying
  775.     memory.
  776. o zooming to 0.1 no longer gives X error (dash list was null)
  777. o filenames in File/Export windows weren't sorted correctly
  778.     from Simon Marshall (S.Marshall@sequent.cc.hull.ac.uk)
  779. o more explicit note about object depth in the man pages in the "GRAPHICAL
  780.     OBJECTS" section
  781. o scaling vertical or horizontal line no longer causes floating point exception
  782.     from Steve Tynor (tynor@prism.gatech.edu)
  783. o null strings in text objects now produce warning message when reading from
  784.     file but xfig continues to read rest of file
  785. o scrollbars in File and Export popups reset to top when changing directories
  786. o default output filename in Export popup now changes to reflect current
  787.     figure filename
  788. o default colors in Fig-color are a little nicer :-)
  789. o checking for file writablity now uses access() call
  790.     from Devon Bowen (bowen@cs.buffalo.edu)
  791. o XtRemoveGrab bug when popping down file message window finally fixed
  792.     many thanks to David Wexelblat (dwex@mtgzfs3.att.com)
  793. o XtAppAddActions() only called once now for each action
  794.     from David Wexelblat (dwex@mtgzfs3.att.com)
  795. o changed cfree() calls to free() for those machines that don't have it
  796.     from Anthony Datri (datri@concave.convex.com)
  797. o moved static function definitions outside of procedures for those machines
  798.     which can't handle them
  799.     from Anthony Datri (datri@concave.convex.com)
  800. o added second line to Imakefile to put the xfig directory containing the
  801.     CompKeyDB (multi-key) database file in the standard X11 library
  802. o fixed bug introduced in 2.1.1 which incorrectly placed radius marker of
  803.     circles created by radius
  804. o circle is now changed to ellipse type when scaled assymetrically
  805. o fixed various typos in xfig.man
  806. o changed references to mouse buttons left/middle/right to say buttons 1/2/3
  807.     respectively
  808. o radius of ellipses-specified-by-radius was one pixel too large
  809. o changed interpretation of 1/0 bits in EPS preview bitmaps back to original
  810.     0=white, 1=black according to EPSF guide version 2.0.
  811.     Brought to my attention by Vivek Khera (khera@cs.duke.edu)
  812. o moved #include Xaw... directives to figx.h to speed up compilation
  813. o added conditional for Sun 3 and SunOs 4.0.3
  814.     from Peter Scott (pjs@euclid.jpl.nasa.gov)
  815. o fixed typo in FORMAT2.1 file describing values for types of splines
  816. o more lint cleanup and print file name "protection" in case filename has
  817.     any shell meta characters
  818.     from Jonathan Kamens (jik@MIT.Edu)
  819. o epsf file wasn't closed after reading if there was no preview bitmap
  820.     from Herve Poirier (rvp@dxcern.cern.ch)
  821. o fixed bug where certain objects inside compound weren't being drawn when
  822.     there was more than one compound object in the figure
  823. o removed ISO8859 requirement for Symbol and ZapfDingbats fonts (those fonts
  824.     weren't being displayed)
  825.  
  826. ------------------------------------------------------------------------------
  827. Patchlevel 4 (Apr 1992)
  828. Changes to Patchlevel 3:
  829.  
  830. o keyFile resource allows ANY path for compose key data base, not just relative
  831.     to $XFIGLIBDIR
  832.     from Pete Kaiser (kaiser@heron.enet.dec.com)
  833. o simple edit arrowhead feature in the popup edit for lines - can add/delete
  834.     arrow heads.  No adjustment of arrow size yet - uses current linewidth
  835.     from indicator panel
  836. o Example figure files have all been converted to 2.1 file format
  837. o if any object coordinates are negative, the whole figure is shifted to keep it
  838.     on the canvas
  839. o fixed major bug where the preview bitmap of EPS objects was in reverse video
  840.     (1 is white not black, according to the PostScript Language Ref. Manual)
  841.     *** SEE COMMENT IN PATCHLEVEL 5 ABOUT EPSI PREVIEW BITMAPS ***
  842. o general cleanup of param types in Xt callback/action etc. procedures and other
  843.     lint cleanup
  844.     from Jonathan Kamens (jik@MIT.Edu)
  845. o Alt_L key added to list of keys to do international characters
  846.     from Marc Goldburg (marcg@alfalfa.stanford.edu)
  847. o fractional zoom (i.e. zoom < 1) - see man pages
  848. o eps data wasn't being initialized when the eps file wasn't available
  849. o redefined filename length for eps object to PATH_MAX
  850. o -showallbuttons option didn't show the depth indicator
  851.     from Paul King (king@cs.uq.oz.au)
  852. o fixed bugs where using export and print shortcut before ever popping
  853.     up respective menus used incorrect options
  854. o changes to the file popup:
  855.     o new "Home" button changes directory to $HOME
  856.     o ~ (username) operator allowed in the current directory ascii widget
  857.     o new label widget shows the current figure filename
  858.     o presssing "Load", "Save" or "Merge Read" will operate on the
  859.       filename in the "Filename" window.  If that name is empty the
  860.       operation is done on the file specified in the "Current Filename"
  861.       window.
  862.     o additionally, the "Load" operation will copy the name (if any)
  863.       from the "Filename" window to the "Current Filename" window
  864.     o pressing return in the "list of files" window in the popup File panel
  865.       will "Load" the file
  866. o changes to the export popup:
  867.     o new "Home" button changes directory to $HOME
  868.     o ~ (username) operator allowed in the current directory ascii widget
  869.     o pressing return in the "list of files" window in the popup Export
  870.       panel will "Export" the file
  871. o Pre-2.1 fig files now have text flags set to PostScript mode when reading into
  872.     xfig 2.1.4
  873. o 1.4-TFX fig files now have text flags set to PostScript mode PLUS Special
  874. o font names now include "ISO-8859" to insure that ISO Latin characters are used
  875.     from Thierry EXCOFFIER (exco@ligiahp.univ-lyon1.fr)
  876. o -debug no longer runs xfig synchronously - use standard toolkit option -sync
  877. o control points for spline objects now span multiple lines in output file if
  878.     there are many points
  879. o scrollable x-y points panel in the popup edit panel for objects with many
  880.     points (mwm didn't display the x-y values when the popup was taller than
  881.     the screen)
  882. o If you have Display Postscript in your server, compile xfig with -DDPS
  883.     and you will see the full Postscript object instead of preview bitmap
  884.     when you include EPS objects.
  885.     !!! WARNING: this has only been tested on IBM's AIX 3.2 (X11R4) on
  886.     an RS/6000 !!!
  887.     from Dave Hale (dhale@green.mines.colorado.edu)
  888. o fixed bug in error return from system() - now popups error message when
  889.     can't export/print figure
  890. o unused function clear_char_string() deleted from w_canvas.c
  891. o current depth is now in an indicator window and may be set like line
  892.     thickness, color etc.
  893. o added update tags to control which object components are modified/copied
  894.     when using the update button.  Button appears in upper-right corner
  895.     of indicator button (e.g linewidth) when in update mode.  Clicking
  896.     on the update tag enables/disables components (e.g. linewidth) from
  897.     being copied to/from objects when using update.
  898. o fixed exporting of pstex_t and pstex (used to give Postscript for both)
  899. o FIG 1.4-TFX file area_fill values now correctly translated to 2.1 format
  900. o deleted duplicate #include <math.h> from u_geom.c and w_export.c
  901. o changed ^U (control U) in w_canvas.c to \023 for mailers which clobber
  902.     control chars
  903. o added possibility of wider top ruler and taller side ruler by using
  904.     -DMAX_TOPRULER_WD=value and -DMAX_SIDERULER_HT=value in Imakefile
  905. o added function strtol() for those systems that don't have it.
  906.     from Jonathan Kamens (jik@rtfm.MIT.EDU)
  907. o added note about -DNOSTRSTR and -DNOSTRTOL for those systems that don't
  908.     have strstr() and/or strtol() respectively.
  909. o fixed type mismatch and bug in call to getenv in main().
  910. o type mismatch fixed for X11R5 in call to XtAppInitialize().
  911.     from Jonathan Kamens (jik@rtfm.MIT.EDU)
  912. o small performance fix in u_draw.c in add_point() when reallocating points
  913.     from Dave Hale (dhale@green.Mines.Colorado.EDU)
  914.  
  915. ------------------------------------------------------------------------------
  916. Patchlevel 3 (Jan 1992)
  917. Changes to Patchlevel 2:
  918.  
  919. o pressing carriage return in value part of popup indicator buttons that take
  920.     integer or float (e.g. line width) now sets the value and pops down
  921. o added foreground colors to Text*, Menu* and List* widgets in default Fig-color.ad
  922.     this fixes problem of white-on-white text when using inverse video
  923. o changes two resource names -
  924.     "xfig_export_menu.export_panel.just_label.flush left" to
  925.     "xfig_export_menu.export_panel.just_label.justify"
  926.     and
  927.     "xfig_print_menu.print_panel.just_label.flush left" to
  928.     "xfig_print_menu.print_panel.just_label.justify"
  929. o some type castings fixed
  930.     from Wayne D Richardson (wdr@rchland.vnet.ibm.com)
  931. o fixed "open file leak" - directory wasn't closed after file popup finished
  932. o fixed selection of Times-Roman font under Openwindows
  933. o changed titles of popup panels to meaningful names
  934. o leading blanks no longer stripped from text objects
  935.     from George Ferguson (ferguson@cs.rochester.edu)
  936. o null strings in text objects now abort load/read of file with error message
  937.     from George Ferguson (ferguson@cs.rochester.edu)
  938. o conditional in xfig.man to set page offset only when using troff
  939.     from George Ferguson (ferguson@cs.rochester.edu)
  940. o added translation so that pressing return in filename window in popup FILE
  941.     will load the file
  942. o added translation so that pressing return in filename window in popup EXPORT
  943.     will export the file
  944. o fixed filled objects of DEFAULT color
  945. o fixed bug in delete region
  946.     from Peter Asenstorfer (peter@audrey.levels.unisa.edu.au)
  947. o cleaned up cursor stuff - no impact on user
  948.     from Brian Boyter (pyrdc!bimbo!boyter@uunet.UU.NET)
  949. o new resource "-keyFile" to specify alternate compose key translation
  950.     file in the XFIGLIBDIR directory
  951.     From Herve Soulard (soulard@corto.inria.fr)
  952. o popup message window to inform user when illegal values in figure file
  953.     are fixed or when converting from older file versions to newest
  954. o limit on depth of objects to 1000 when reading figure file. Fixes problems
  955.     of infinite looping for files which were converted from Fig 2.0.
  956.     Also sets depth to zero (0) when reading files older than 2.1.
  957. o xfig.man now tells man to run tbl so that regular tables can be used
  958.     from James B. Davis (james@solbourne.com)
  959. o fixed Meta-Y (insert current selection), ^Y (unkill) and ^G (multiply reset)
  960.     in CompKeyDB
  961. o added capability to delete whole text line from text widgets with ^X
  962.     from Brian Boyter (pyrdc!bimbo!boyter@uunet.UU.NET)
  963. o ^U no longer deletes line of text in text object mode for compatibility
  964.     with text widgets.  Use only ^X now.
  965. o fixed problem with OpenWindows and rubberbanding objects
  966.     from Brian Boyter (pyrdc!bimbo!boyter@uunet.UU.NET)
  967. o fixed minor bug in f_util.c line 82: assignment with '==' instead of '='
  968.     from pf@diab.se (Per Fogelstr|m)
  969. o fixed up bug in set_tags call in w_modepanel.c
  970.     from Graeme Gill (graeme@labtam.labtam.oz.au)
  971. o added strstr() function for systems without it
  972. o warning message about redefining InstallManPage fixed
  973. o removed unneeded O_NONE symbol from object.h
  974. o directory code fixed to work with SVR4
  975.     from David Elliot (dce@krusty.smsc.sony.com)
  976. o cleaned up function declarations for event handlers
  977.     from Anthony Datri (datri@lovecraft.convex.com)
  978. o renamed Fig-co.ad to Fig-color.ad for color customization under X11R5 (see
  979.     README). Fig-co.ad can be deleted (if you have an older copy of xfig)
  980.     from David Elliot (dce@krusty.smsc.sony.com)
  981.  
  982. ------------------------------------------------------------------------------
  983. Patchlevel 2 (Dec 1991)
  984. Changes to Patchlevel 1:
  985.  
  986. o the font flag (LaTeX, PostScript) wasn't being changed correctly in the
  987.     UPDATE text object operation when switching from LaTeX to PostScript
  988.     or vice versa.
  989. o the textstep value may now be entered in floating point in the popup menu
  990. o the eps-bitmap icon was renamed to eps-object because it can be any
  991.     eps object that is imported.  If it has a preview bitmap
  992.     that will be displayed.  Several filenames/program variables
  993.     were also changed to reflect this.
  994. o there is now a more general glue mechanism for compounding objects
  995. o text pasting into canvas now possible with F18 function key or any translation
  996.     desired by user.  F18 is hardwired default in program; F20 also
  997.     programmed in Fig.ad to paste text.
  998.     Brian Boyter (pyrdc!bimbo!boyter@uunet.UU.NET)
  999. o DEFAULT fill_style caused core dump
  1000.     from Jeffry R. Abramson (jra@violin.att.com)
  1001. o made the mouse-tracking markers hollow so as not to be visually obtrusive
  1002.     as suggested by Stephen Gildea (gildea@expo.lcs.mit.edu)
  1003. o removed extraneous call to free() in add_point() (u_draw.c)
  1004.     from Per Fogelstr|m (pf@diab.se)
  1005. o cleaned up gcc compiler warnings about type mismatches etc.
  1006. o compound objects may be rotated by arbitrary angles if there are no boxes,
  1007.     arc-boxes, ellipses or circles contained within.
  1008. o text rotation support is improved - markers are now shown rotated and
  1009.     the angle attribute is set by the relevant rotate operations.
  1010. o both ps and eps modes now supported in export menu.
  1011. o new directory browsing facilities integrated with File and Export popups.
  1012.     Allows selection of file by clicking on the filename.  Has mask to list
  1013.     only those files of interest.  See the man pages for further details.
  1014. o Default font for Postscript fonts may now be selected and objects that
  1015.     have default font may be edited
  1016. o FASTSERVER flag removed; now always uses smart redrawing when available
  1017.     Additionally, smart redrawing is available more often
  1018. o fixed bug in regular polygon where some vertices were off by one pixel
  1019. o added "Use orig. size" button for eps objects to set object to original
  1020.     size in popup edit
  1021.     from Peter Scott (pjs@euclid.jpl.nasa.gov)
  1022. o international characters supported (umlauts, accents, cedilla etc) using
  1023.     compose (meta) key
  1024.     from Herve Soulard (soulard@corto.inria.fr)
  1025. o much improved color support
  1026.     from Henning Spruth (hns@regent.e-technik.tu-muenchen.de)
  1027. o additional pan and zoom mode with <Ctrl>Key and left/middle/right button
  1028.     from Henning Spruth (hns@regent.e-technik.tu-muenchen.de)
  1029. o removed reference to FONTLIBDIR in Imakefile (no longer required)
  1030. o added a smart-links feature for the MOVE and COPY commands.
  1031.     With smart links turned on, when a BOX-like object is moved
  1032.     so are the lines which join up to it (its links).
  1033.     Two modes are supported: one which moves just the endpoint,
  1034.     the other slides the endlink so that it's angle doesn't change.
  1035.     In the second mode horizontal/vertical lines remain that way.
  1036. o added the ability to save figure during quit if it is modified
  1037. o added support for scalable fonts under R5
  1038. o additional command line flags supported
  1039.     -latexfonts flag (resource .latexfonts) to start xfig with the LaTeX
  1040.     fonts as the default instead of PostScript fonts
  1041.     -specialtext flag (resource .specialtext) to start xfig with special
  1042.     text as the default
  1043. o bug fixed where number of objects count in file popup was sometimes clipped
  1044. ------------------------------------------------------------------------------
  1045.  
  1046. Patchlevel 1 (Oct 1991)
  1047. Changes to Patchlevel 0:
  1048.  
  1049. o xfig now reads text size, height and length as floats and rounds to ints
  1050.     this is done because certain programs generate floats for these
  1051. o compound object was rounded to next larger grid even if objects inside were
  1052.     already on the grid
  1053. o Examples/logo.fig included Logo.eps instead of logo.eps
  1054. o cancellation of line drawing left single dot on screen
  1055. o filename in File popup menu didn't get set until first popup - file save
  1056.     shortcut would save to unnamed.fig even if xfig was started with file name
  1057. o bug fixed in not being able to delete points from certain objects
  1058. o typo in FORMAT2.1 file (and all previous) stating that text angle is int when
  1059.     it is really float
  1060. o can now change corners of compound object with edit popup
  1061.     also shows number of objects inside compound
  1062. o file menu now shows number of objects in figure
  1063. o some bugs fixed in calculating bounding boxes after scaling ellipses and
  1064.     compounds
  1065. o "#ifdefined SYSV" now reads "#if defined(SYSV) || defined(SVR4)" because X11R5
  1066.     doesn't define SYSV if SVR4 is defined
  1067.     David Elliott (dce@krusty.smsc.Sony.COM)
  1068. o object depths < 0 are converted to depth = 0
  1069. o typo in Adobe font name (was "-abode-new century schoolbook-medium-r-*--*")
  1070.     Jan Lindheim (lindheim@ccsf.caltech.edu)
  1071. o radius field for non-arcbox line objects now set to -1
  1072.     Jan Nusteling (j.nusteling@et.tudelft.nl)
  1073. o bug fixed in not trying to load an eps bitmap file called <empty>
  1074.     and not trying to reload an eps bitmap during a copy.
  1075. o bug fixed which caused crash after editing 0-width or 0-height ellipses
  1076. o bug fixed which caused incorrect mode after cancelling draw (int)spline
  1077. o bug fixed which caused incorrect minimum number of points for (int)spline
  1078. o bug fixed which caused erroneous large values to occur after box scale of
  1079.     0-width or 0-height objects.  You can no longer box scale such objects
  1080. ------------------------------------------------------------------------------
  1081.  
  1082. Patchlevel 0 (Sep 1991)
  1083. Changes to Version 2.0 Patchlevel 10:
  1084.  
  1085. Implemented by Paul King (king@cs.uq.oz.au) and
  1086. Brian Smith (envbvs@epb7.lbl.gov) with help from
  1087. Micah Beck (beck@cs.cornell.edu) and
  1088. Brian Boyter (pyrdc!bimbo!boyter@uunet.UU.NET) (EPS code).
  1089.  
  1090. USER INTERFACE
  1091. --------------
  1092.  
  1093. o The buttons are now grouped into three panels:
  1094.  
  1095.     COMMAND panel:
  1096.         Quit, Delete all, Undo, Redraw, Paste, File popup, Export popup and
  1097.         Print popup buttons.  See man pages for details.
  1098.         (see "Drawing Modes", below for description of Cut)
  1099.     MODE panel:
  1100.     Allow the user to select the current drawing or editing mode.
  1101.     INDICATOR panel:
  1102.     By default shows indicator buttons relevant to the current mode.
  1103.     Each indicator button displays current setting of some quantity
  1104.     (e.g. line width, area-fill) and allows it to be changed:
  1105.         left button gives popup menu to select setting,
  1106.         middle/right buttons provide a shortcut to inc/decrement settings.
  1107.  
  1108. o Pan figure by using left/middle/right button in the rulers in addition to
  1109.     the previously supported arrow keys.  Also a pan to origin operation
  1110.     is available by clicking in the units window (or using HOME key).
  1111. o May now print figure that hasn't been saved (i.e. print what is on the
  1112.     canvas, not the file)
  1113. o Zoom up or down with zoom button.
  1114. o Mouse function window shows function of active buttons
  1115. o New resources/command-line switches which affect the user interface:
  1116.     -showallbuttons        (show all indicator buttons all the time)
  1117.     -internalBW n        (use lines of width n between buttons/panels)
  1118.  
  1119. DRAWING MODES
  1120. -------------
  1121.  
  1122. o Regular polygon drawing button - select number of sized from bottom panel.
  1123.         Object created is normal xfig polygon.
  1124. o Inclusion of Encapsulated Postscript files (bitmap image in EPS file is
  1125.     displayed).
  1126. o Rubberbanding of ellipses/circles.
  1127. o Filled splines show areafill on screen now
  1128.         also dashed/dotted line type shows on screen
  1129. o Dot-gap and dash-length can be changed in the line-style indicator popup.
  1130.  
  1131. EDITING MODES
  1132. -------------
  1133.  
  1134. o Cut to buffer operation is now part of Copy object mode & Delete object mode.
  1135. o Update button to either update objects to current settings, or update
  1136.         indicator settings from an object.
  1137. o Rotation of certain objects by any angle (30, 45, 60, 90, 120 degrees can
  1138.     be selected using the mouse middle/right shortcut buttons).
  1139. o Alignment horizontally and/or vertically of objects to compound object edge(s)
  1140. o Objects can be scaled (not just compounds).
  1141. o Point move or object copy/move constrainable to horizontal or vertical
  1142.     movement (middle mouse button)
  1143. o Compound bounding corners shrink to fit enclosed objects and have markers
  1144.     that appear the same as other objects.
  1145. o Shift-click selection should work on all editing operations.
  1146. o Only the objects relevant to a particular editing operation will
  1147.     have their markers shown.
  1148.  
  1149. OVERALL OPERATION
  1150. -----------------
  1151.  
  1152. o Smarter redrawing (if compiled with -DFASTSERVER).
  1153.     Only the relevant objects are redrawn after an expose or after
  1154.     an edit operation (not all operations support this yet).
  1155. o Undo should work for all commands.
  1156. o Operations can now be cancelled (using the right button when appropriate).
  1157. o Point positioning to three resolutions:
  1158.     magnet (1/16inch), small grid or large grid
  1159. o TransFig 2.1 features: LaTex fonts, hidden text, scalable text, "special" text
  1160.         see TransFig man pages for description
  1161.         scalable text sizes with resizing of figure
  1162. o Attempts to save figure if signal detected (segmentation violation, etc)
  1163. o Resizing the xfig window should now be a bit smarter.
  1164. o The philosophy behind button usage has changed. This was necessary to
  1165.     provide a consistent (as possible) philosophy which supports the
  1166.     use of several buttons per mode.  Now the same button used to start
  1167.     an edit/draw operation is used to continue to the normal next step
  1168.     in the operation.  The right button can be used to cancel an operation.
  1169.     Watch the mouse function window until you get the hang of it.
  1170.